软件相关命令

软件开机启动

方法一

ubuntu 自带软件:启动应用程序

方法二 rc-local

查看开机启动服务的状态

systemctl status rc-local

原文

Ubuntu22.04 rc-local 配置开机自启动脚本

  1. rc-local 服务简介
    Linux 中的 rc-local 服务是一个开机自动启动的,调用开发人员或系统管理员编写的可执行脚本或命令的,它的启动顺序是在系统所有服务加载完成之后执行。

ubuntu22.04 系统已经默认安装了 rc-local.service 服务,但是不知什么原因系统把这个服务给“隐蔽”了,所以如果不做一番操作是无法使用的。

  1. 配置
    将 rc-local 服务设置为开机自启动 (本文操作都在 root 用户下,或使用 sudo)。

首先将 rc-local.service 文件复制到 system 目录下

cp /usr/lib/systemd/system/rc-local.service /etc/systemd/system/

新建 rc.local 文件

ubuntu22.04 中/etc/目录下是没有 rc.local 文件的,需要我们手动建立一个。

touch /etc/rc.local
chmod 755 /etc/rc.local
echo '''#!/bin/bash''' >> /etc/rc.local

设置开机启动 rc-local

systemctl start rc-local
systemctl enable rc-local
init 6

重启系统后,通过命令 systemctl status rc-local 查看服务已经正常开启了。

3.在 rc.local 中添加你开机需要自动执行的脚本

cd /home/youwei
echo "jar 包开始部署" 
nohup java -jar ruoyi-admin.jar > /dev/null 2>&1 &
echo "ok is successful"

其他相关教程

Linux设置开机启动的三种方式-腾讯云开发者社区-腾讯云
linux设置开机自启动-腾讯云开发者社区-腾讯云

创建快捷方式

在 linux 中是软链接

ln -s /home/test2/Documents/Zotero_linux-x86_64/zotero.desktop /home/test2/.local/share/applications/zotero.desktop
ln -s test test_fast

也就是给 test 创建快捷方式名为 test_fast,注意 test 路径必须是绝对路径!!!

关闭后台进程

查看线程

ps -ef | grep java
ps -ef | grep QQ

其中 root 后面的 46482 是要结束的进程的 ID
![](/img/user/resources/attachments/Pasted image 20230710101512.png)

查看进程

ps aux | grep process_name
进程的 PID(Process ID)是每行的第二列

关闭进程

其中 kill -9 进程 ID,关闭进程命令

kill -9 46482
kill -9 10305 # qq

可视化方法

system monitor,类似 windows 的任务管理器

用命令行启动软件

找到对应文件夹,/opt/name,比如/opt/QQ
打开 shell
输入 qq
即可启动

关闭命令行保持程序运行

nohup ./aaa & 
exit

apt

更新软件包列表

sudo apt-get update

apt 安装软件包

sudo apt-get install libboost-all-dev

apt 与 apt-get

总结一下 apt 与 apt-get 的异同:
1) apt 是 apt-get 和 apt-cache 命令的子集,提供软件包管理的必要命令。
2) 尽管 apt-get 未被取代,但作为常规使用者,你应该尽量使用 apt。

apt 卸载软件包

普通删除

dpkg --list
sudo apt-get remove unload

同时删除配置

sudo apt-get purge unload

相关教程

Linux卸载软件命令 • Worktile社区
(1) remove – 卸载软件包
(2) autoremove – 卸载所有自动安装且不再使用的软件包
(3) purge – 卸载并清除软件包的配置

这里重点介绍一下 autoremove: apt-get autoremove 的行为重点是卸载所有自动安装,例如:C 依赖于 B, D 依赖于 B, 且 D 没有被其他手动安装的包依赖。
apt-get remove C 将删除 C, 同时提示你用 apt-get autoremove 去清除 B,D ;apt-get autoremove C 将删除 B, C, D 。
所以,这条命令最恐怖的是在不了解的情况下,你不知道他会把系统中的什么配置文件给删除.

dpkg

sudo dpkg -i EasyConnect_x64_7_6_7_3.deb
dpkg --list  
dpkg -l | grep 'easyconnect'  
sudo dpkg -r easyconnect  
dpkg -l | grep 'easyconnect'  
sudo dpkg --purge easyconnect  
dpkg -l | grep 'easyconnect'